﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Text.RegularExpressions;
using Data;

namespace hostal
{
    public partial class BuscarReserva : Form
    {
        DataTable dataTableTemporal = new DataTable();
        string nombre;
        public BuscarReserva()
        {
            InitializeComponent();
        }
        public BuscarReserva(string registro)
        {
            InitializeComponent();
            BTCancelarReserva.Hide(); ;
            BTVerReserva.Hide();
            BTEditarReserva.Hide();
            BTregistrarIngreso.Show();
        }

        private void TBBuscarReservas_Click(object sender, EventArgs e)
        {
            ReservasDataAccess buscarDataAccess = new ReservasDataAccess();
            TBNombreReserva.Text = Regex.Replace(TBNombreReserva.Text, @"\s+", " ").Trim();
            nombre = TBBuscarReservas.Text;
            dataTableTemporal = buscarDataAccess.buscarReserva(TBNombreReserva.Text);
            DGReservas.DataSource = dataTableTemporal;
        }

        private void BTVerReserva_Click(object sender, EventArgs e)
        {
            ReservasDataAccess verInformacion = new ReservasDataAccess();
            try
            {
                int fila = DGReservas.CurrentRow.Index;
                string numeroDocumento = DGReservas.Rows[fila].Cells["numeroDocumento"].Value.ToString();
                string fechaLlegada = DGReservas.Rows[fila].Cells["fechaLlegada"].Value.ToString();
                string fechaRegistro = DGReservas.Rows[fila].Cells["fechaRegistro"].Value.ToString();
                VerReserva verDetallePersonal = new VerReserva(verInformacion.buscarTodosDatos(numeroDocumento, fechaLlegada, fechaRegistro));
                verDetallePersonal.ShowDialog();
            }
            catch (SystemException exeption){}
        }

        private void BTEditarReserva_Click(object sender, EventArgs e)
        {
            ReservasDataAccess verInformacion = new ReservasDataAccess();
            try
            {
                int fila = DGReservas.CurrentRow.Index;
                string numeroDocumento = DGReservas.Rows[fila].Cells["numeroDocumento"].Value.ToString();
                string fechaLlegada = DGReservas.Rows[fila].Cells["fechaLlegada"].Value.ToString();
                string fechaRegistro = DGReservas.Rows[fila].Cells["fechaRegistro"].Value.ToString();
                string fechaSalida = DGReservas.Rows[fila].Cells["fechaSalida"].Value.ToString();
                EditarReserva verDetallePersonal = new EditarReserva(numeroDocumento, fechaLlegada, fechaSalida, fechaRegistro, verInformacion.buscarTodosDatos(numeroDocumento, fechaLlegada, fechaRegistro));
                verDetallePersonal.ShowDialog();
                TBBuscarReservas_Click(sender, e);
            }
            catch (SystemException exeption) { }
        }

        private void BTCancelarReserva_Click(object sender, EventArgs e)
        {
            ReservasDataAccess verInformacion = new ReservasDataAccess();
            try
            {
                int fila = DGReservas.CurrentRow.Index;
                string numeroDocumento = DGReservas.Rows[fila].Cells["numeroDocumento"].Value.ToString();
                string fechaLlegada = DGReservas.Rows[fila].Cells["fechaLlegada"].Value.ToString();
                string fechaRegistro = DGReservas.Rows[fila].Cells["fechaRegistro"].Value.ToString();
                string fechaSalida = DGReservas.Rows[fila].Cells["fechaSalida"].Value.ToString();
                CancelarReserva verDetallePersonal = new CancelarReserva(numeroDocumento, fechaLlegada, fechaSalida, fechaRegistro, verInformacion.buscarTodosDatos(numeroDocumento, fechaLlegada, fechaRegistro));
                verDetallePersonal.ShowDialog();
                TBBuscarReservas_Click(sender, e);
            }
            catch (SystemException exeption) { }
        }

        private void CBTipoBusqueda_KeyPress(object sender, KeyPressEventArgs e)
        {
            e.Handled = true;
        }

        private void BTregistrarIngreso_Click(object sender, EventArgs e)
        {
            ReservasDataAccess verInformacion = new ReservasDataAccess();

            try
            {
                int fila = DGReservas.CurrentRow.Index;
                string numeroDocumento = DGReservas.Rows[fila].Cells["numeroDocumento"].Value.ToString();
                string fechaLlegada = DGReservas.Rows[fila].Cells["fechaLlegada"].Value.ToString();
                string fechaRegistro = DGReservas.Rows[fila].Cells["fechaRegistro"].Value.ToString();
                string fechaSalida = DGReservas.Rows[fila].Cells["fechaSalida"].Value.ToString();
                //habitacionesReserva verDetallePersonal = new habitacionesReserva(numeroDocumento, fechaLlegada, fechaSalida, fechaRegistro, verInformacion.buscarTodosDatos(numeroDocumento, fechaLlegada, fechaRegistro));
                RegistrarConReserva verDetallePersonal = new RegistrarConReserva(numeroDocumento, fechaLlegada, fechaSalida, fechaRegistro, verInformacion.buscarTodosDatos(numeroDocumento, fechaLlegada, fechaRegistro));
                verDetallePersonal.ShowDialog();
            }
            catch (Exception exp) { }
            TBBuscarReservas_Click(sender, e);
        }
    }
}
